package com.ruoyi.net.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.net.mapper.BusiMplstpElementMapper;
import com.ruoyi.net.domain.BusiMplstpElement;
import com.ruoyi.net.service.IBusiMplstpElementService;

/**
 * MPLS-TP单站（网元）业务Service业务层处理
 * 
 * @author net
 * @date 2025-02-25
 */
@Service
public class BusiMplstpElementServiceImpl implements IBusiMplstpElementService 
{
    @Autowired
    private BusiMplstpElementMapper busiMplstpElementMapper;

    /**
     * 查询MPLS-TP单站（网元）业务
     * 
     * @param id MPLS-TP单站（网元）业务主键
     * @return MPLS-TP单站（网元）业务
     */
    @Override
    public BusiMplstpElement selectBusiMplstpElementById(String id)
    {
        return busiMplstpElementMapper.selectBusiMplstpElementById(id);
    }

    /**
     * 查询MPLS-TP单站（网元）业务列表
     * 
     * @param busiMplstpElement MPLS-TP单站（网元）业务
     * @return MPLS-TP单站（网元）业务
     */
    @Override
    public List<BusiMplstpElement> selectBusiMplstpElementList(BusiMplstpElement busiMplstpElement)
    {
        return busiMplstpElementMapper.selectBusiMplstpElementList(busiMplstpElement);
    }

    /**
     * 新增MPLS-TP单站（网元）业务
     * 
     * @param busiMplstpElement MPLS-TP单站（网元）业务
     * @return 结果
     */
    @Override
    public int insertBusiMplstpElement(BusiMplstpElement busiMplstpElement)
    {
        String uuid = IdUtils.simpleUUID();
        if (StringUtils.isEmpty(busiMplstpElement.getId())) {
            busiMplstpElement.setId(uuid);
        }
        busiMplstpElement.setCreateBy(SecurityUtils.getUsername());
        busiMplstpElement.setCreateTime(DateUtils.getNowDate());
        busiMplstpElement.setUpdateBy(SecurityUtils.getUsername());
        busiMplstpElement.setUpdateTime(DateUtils.getNowDate());
        return busiMplstpElementMapper.insertBusiMplstpElement(busiMplstpElement);
    }

    /**
     * 修改MPLS-TP单站（网元）业务
     * 
     * @param busiMplstpElement MPLS-TP单站（网元）业务
     * @return 结果
     */
    @Override
    public int updateBusiMplstpElement(BusiMplstpElement busiMplstpElement)
    {
        busiMplstpElement.setUpdateBy(SecurityUtils.getUsername());
        busiMplstpElement.setUpdateTime(DateUtils.getNowDate());
        return busiMplstpElementMapper.updateBusiMplstpElement(busiMplstpElement);
    }

    /**
     * 批量删除MPLS-TP单站（网元）业务
     * 
     * @param ids 需要删除的MPLS-TP单站（网元）业务主键
     * @return 结果
     */
    @Override
    public int deleteBusiMplstpElementByIds(String[] ids)
    {
        return busiMplstpElementMapper.deleteBusiMplstpElementByIds(ids);
    }

    /**
     * 删除MPLS-TP单站（网元）业务信息
     * 
     * @param id MPLS-TP单站（网元）业务主键
     * @return 结果
     */
    @Override
    public int deleteBusiMplstpElementById(String id)
    {
        return busiMplstpElementMapper.deleteBusiMplstpElementById(id);
    }

    @Override
    public int updateBusiMplstpElementByParam(BusiMplstpElement busiMplstpElement) {
        return busiMplstpElementMapper.updateBusiMplstpElementByParam(busiMplstpElement);
    }
}
